This application claims priority from European application 99480063.9, filed Jul. 13, 1999 (MM/DD/YY), which is hereby incorporated by reference. The contents of the present application are not necessarily identical to the contents of the priority document.
1. Technical Field
The invention relates to high-speed packet switched networks. More particularly, the invention relates to a connection bandwidth management process and system which rely on an efficient monitoring of the network resources occupancy to re-compute the bandwidth allocated to connections boarded on a given link so that the overall bandwidth capacity of the link is not exceeded.
2. Description of the Related Art
The emergence of high speed networking technologies such as ATM cell-based or Frame Relay based technologies, now makes possible the integration of multiple types of traffic having different quality of service requirements (QoS), like speech, video and data, over the same communication network, which is often referred to as a xe2x80x9cbroadbandxe2x80x9d network. The communication circuits which may be shared in such network include transmission lines, program controlled processors, nodes or links, and data or packets buffers. Traffic QoS requirements are taken into account during the path selection process, and can be defined as a set of measurable quantities or parameters that describe the user""s perception of the service offered by the network. Such parameters include the connection setup delay, the connection blocking probability, the loss probability, the error probability, the end-to-end transit delay and the end-to-end delay variation also referred to as jitter. Real-time traffics have more constraining requirements than non-real-time ones i.e. end-to-end delays and jitters. It is necessary to be able to give priority to the real-time packets in order to minimize these delays. Meanwhile, the packet loss must be guaranteed both for real-time and non-real-time applications which have reserved bandwidth in the network, while it is not mandatory for non-reserved type of traffic.
In this context, network users want the ability to request and be granted service level agreements (SLAs). An SLA is an agreement by the network provider to supply a guaranteed level of connectivity for a given price. The agreement is reciprocal in that the user also commits not to go beyond a certain level of network usage. The level of connectivity can be expressed in many ways, including the following: the Bandwidth (number of bits per second), the Latency (end-to-end delay), the Availability (degree of uninterrupted service), the Loss Probability, and the Security (guarantee that only the intended parties can participate in a communication).
Another important objective of the networks providers is to optimize the network resources utilization. Indeed, communication networks have at their disposal limited resources to ensure an efficient packets transmission, and while transmission costs per byte continue to drop year after year, transmission costs are likely to continue to represent the major expense of operating future telecommunication networks as the demand for bandwidth increases. More specifically, considering wide area networks (also referred to as xe2x80x9cbackbone networksxe2x80x9d), the cost of physical connectivity between sites is frequently estimated at 80% of the overall cost. The connectivity can come in the form of a leased line, X.25 service, frame relay bearer service (FRBS), ATM bearer service (ATMBS), X.25, or a virtual private network. As higher-speed links become available, the cost per bit may decrease, but the absolute cost of links will remain significant. Therefore, there is a need to minimize the net cost per transmitted bit for all connectivity options and link speeds. Minimizing the cost per bit means squeezing the maximum possible utilization out of every link.
Thus, considerable efforts have been spent on designing flow and congestion control processes, bandwidth reservation mechanisms, routing algorithms to manage the network bandwidth and do network capacity planning i.e. optimize the configuration of the established connections (bandwidth allocated, path selected, etc.).
In order to comply with both optimizing network resources utilization and guaranteeing satisfactory SLAs to the network customers, high speed networks generally include monitoring software systems to monitor the status of their nodes and links. These monitoring systems typically rely on counters implemented at switching node level. From a network resources monitoring point of view, the most important counters are those which reflect the behavior of the xe2x80x9cbottleneckxe2x80x9d resources of the network because they will also reflect the end to end behavior or quality of the service delivered. In high speed networks, the switching nodes are generally oversized in terms of performances compared to the communication links. As a matter of fact, switching nodes are xe2x80x9cone time costxe2x80x9d for a network owner while lines cost is recurrent for example in a month period basis in case of leased lines, and is also much higher as previously stated. In order to minimize the overall cost of a network, communication lines are sized in order to handle the traffic requirements but no more, and accordingly their throughput is always less than that of a switching node. Therefore, in a high speed network, communication links generally constitute the xe2x80x9cbottleneck resourcesxe2x80x9d.
Links utilization data are typically expressed in terms of percentage of bandwidth utilized per unit of time. Links utilization is typically evaluated as follows:
Considering a link 1 whose maximum speed (i.e. bandwidth) is S cells/bytes per second (where S denotes an integer), and assuming that the counters values associated with that link are polled every T time units (where T denotes an integer, e.g., T=15 minutes). Then, the computed utilization estimation U(l) of link l associated with each measurement time interval T would be expressed by the following formula:             U      ⁡              (        1        )              T    =      N          S      xc3x97      T      
where N denotes the number of cells/packets received during measurement period T, and where T is expressed in seconds. U(l)T is expressed in percentage of link utilization.
These link utilization values, which are computed every time interval T (e.g., T=15 minutes) and periodically retrieved, may be processed in a statistics server associated with the network to compute an average link utilization which is the average of link utilization values U(l)T, computed during a day, or over several days or weeks.
Currently, high speed packet switching networks can support hundreds of thousands of connections. Moreover, tens to hundreds of connections may be configured for each newly subscribed user to the network. Very seldom does a customer know the amount of bandwidth required for each of his connections. In addition, network customers usually take some margin in the bandwidth requested for their connections to anticipate an increase of their traffic needs. The foregoing results in that an important difference is observed between the bandwidth reserved (i.e., contracted) by the customers"" connections and the actual bandwidth used.
One assumption widely considered by large networks providers is that, due to the important number of customers boarded, the diversity of the locations, and the different types of service requested, there is a very low probability that a high number of connections will be active at the same time.
Therefore, in this context, in order to maximize the network resources utilization, network providers typically practice what is commonly known as xe2x80x9coverbookingxe2x80x9d or xe2x80x9coversubscriptionxe2x80x9d of their network links. That is, taking advantage of the statistical multiplexing of connections over the links, they allow more connections to be established on a link than the link may theoretically accept with regard to its total bandwidth capacity.
However, the link oversubscription technique suffers from the shortcomings that if a certain number of the customers boarded on the oversubscribed link increase significantly their traffic and/or a certain number of customers"" connections are active at the same time, and these numbers exceed the predicted values, then an unpredictable link congestion may occur. Such a congestion would induce a random discarding of packets in excess over the link, as all connections"" traffic is categorized non-excess (green) traffic as it stays within the reserved bandwidth.
This random discarding of packets may affect one connection more than another, depending on the time at which the congestion arises, and this goes against the fairness principle which should be applied to the different customers. Besides, in such an oversubscription situation, there is no minimal bandwidth guaranteed per connection.
Therefore, there is a need for a connection bandwidth management technique that would permit at least the same number of connections to be boarded on a given link than when using the typical oversubscription technique, while solving its shortcomings. In particular, such technique should provide a better control of the network behavior in case of a congestion, and guarantee a minimum bandwidth available to each connection boarded on the link.
A main object of the invention is therefore to provide a connection bandwidth management process and system which rely on an efficient monitoring of the network resources occupancy to re-compute the bandwidth allocated to connections boarded on a given link so that the overall bandwidth capacity of the link is not exceeded, while solving the shortcomings of the conventional oversubscription technique.
In brief, in accordance with the appended set of claims, these objects are achieved by providing a connection bandwidth management process and system for use in a high speed packet switching network.
The network comprises a plurality of switching nodes interconnected through a plurality of communication links. Each of the switching nodes comprises means for switching packets from at least one input link to at least one output link. Each of the output links are coupled to at least one buffer in the switching node for queuing packets before they are transmitted over the output link. Each of the communication links supports the traffic of a plurality of user connections statistically multiplexed over the link. Each user connection is allocated an initial agreed-upon bandwidth through the network, with each of the communication links being possibly oversubscribed.
The connection bandwidth management process according to the invention comprises the steps of:
Link monitoring data on the communication links are periodically received in a network monitoring center, and stored in a computer memory in the network monitoring center. Then, one monitored link is selected and the corresponding link monitoring data are retrieved from the computer memory. The link monitored data retrieved for the selected link is analyzed, and it is determined whether the selected link is oversubscribed or not.
If it is determined that the selected link is oversubscribed and that the link monitoring data for the selected link satisfies at least one predetermined condition the bandwidth initially allocated to each of the connections boarded on the selected link is reallocated, such that, the sum of the reallocated bandwidth of the connections boarded on the selected link is less or equal to the total bandwidth capacity of the selected link. The process recycles until all the monitored links have been selected.